package com.huluobo.a2201mvvm_imdemo.demo;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.util.Log;
import android.view.MotionEvent;

import com.huluobo.a2201mvvm_imdemo.R;

/**
 * 事件分发机制: Activity 分发 -> Layout 分发 -> Layout 拦截 -> View 分发 ->View 消费 -> Layout 消费 -> Activity的消费
 * 如果分发 返回true 事件不向下传递,但是事件还在
 * 如果拦截 返回true 事件不向下传递,但是事件正常返回给activity (只有Layout才有拦截方法)
 * 如果消费 返回true 事件不想下传递,事件消失到此为止
 * 如果想不起来,想想爷爷分苹果
 */
public class TouchActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_touch);
    }

    @Override
    public boolean dispatchTouchEvent(MotionEvent ev) {
        Log.i("TagA", "activity的分发方法:" + ev.getAction());
        return super.dispatchTouchEvent(ev);
    }

    @Override
    public boolean onTouchEvent(MotionEvent event) {
        Log.i("TagA", "activity的消费方法:" + event.getAction());
        return super.onTouchEvent(event);
    }
}